package core

import (
	"context"
	"flow-calc/config"
)

/**
 *    Description: 抽象层connector
 *    Date: 2024/4/1
 */

type Connector interface {
	Init() error                                                 // 初始化Connector所关联的存储引擎链接
	Call(ctx context.Context, flow Flow, args interface{}) error // 回调调用Connector 外挂存储逻辑读写操作
	GetId() string                                               // 获取Connector id
	GetName() string                                             // 获取connector的名称
	GetConfig() *config.ConnectorConfig                          // 获取Connector的配置信息
	GetMetaData(key string) interface{}                          // GetMetaData 获取Connector的元数据
	SetMetaData(key string, value interface{})                   // SetMetaData 设置当前Connector的临时数据
}
